The present invention relates to the field of software management, more particularly to automatically managing versioning of mashup widgets.
Mashup pages have become increasingly popular on the Web. A mashup page is a Web interface that combines data from more than one source into a single integrated interface. Many of these mashup pages employ the use of widgets to display content from different sources. Each widget controls the presentation characteristics of data from a given content generator (i.e., a URI addressable source). Interactions between widgets are provided through the use of eventing mechanisms.
Generally, users create a new mashup by starting with a blank Web page, placing content from one or more widgets within a design canvas associated with the blank page, and saving the page view. Communications with and among widgets are either automatically determined (some widgets can detect other “compatible” widgets and automatically communicate) or user specified through the design interface. A user can save a constructed mashup page and publish it to a server. Each time the mashup page is navigated to, the widgets can pull content from their respective sources and can communicate with each other through their eventing mechanisms. Mashups represent a powerful paradigm of customized Web page development, which is quick, leverages existing resources, and permits a user set having minimal software development knowledge to create robust, customized Web pages.
Widgets are constantly being updated and URI addressable content sources are constantly changing. Problems can arise if the widgets associated with a mashup are updated so as to be incompatible with other mashup elements, which include other widgets. Problems also arise when widgets are no longer linked appropriately to a content source (e.g., URI content changes, an updated widget points to a different content source, etc.). No current solution exists that resolves widget versioning problems.